home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD2.iso / Programming / C / hf^k-1.dms / in.adf / Readme < prev    next >
Encoding:
Text File  |  1996-01-19  |  6.7 KB  |  225 lines

  1. © HAAGE & PARTNER Computer GmbH 
  2.  
  3.   Mainzer Straße 10A
  4.   D-61191 Rosbach.
  5.   Germany
  6.  
  7.   Tel: ++49  60 07 / 93 00 50
  8.   Fax: ++49  60 07 / 75 43
  9.  
  10.   Compuserve: 100654,3133
  11.   Internet: 100654.3133@compuserve.com
  12.   Homepage: http://ourworld.compuserve.com/homepages/haage_partner
  13.  
  14. First of all we want to thank you for purchasing StormC. So you told
  15. us that we did the right thing by developing StormC.
  16.  
  17. These are the changes in comparison to Version 1.1:
  18. ======================================================================
  19.  
  20. StormShell
  21. - Expandet optiondialog
  22. - GoldED 4.0 is includet in the package
  23.  
  24. Project Manager
  25. - Make of hierarchical projects
  26. - Own ARexx-Makescripts
  27. - New project section for StormLibrarian
  28.  
  29. StormEd
  30. - bracket-check
  31. - block indent
  32. - new colour controls
  33. - new project template
  34.  
  35. StormRun
  36. - Stack and CPU register window
  37. - Disassembler
  38. - Profiler
  39.  
  40. StormC
  41. - new optimisation levels
  42. - new keyword "__interrupt"
  43.  
  44. StormLibrarian
  45. - simple creation of linker libraries
  46. - Sort function
  47.  
  48. Tools
  49. - FD2Pragma
  50.  
  51.  
  52. Editor Key Map:
  53. ************************
  54.  
  55. Shift-Cursor Up/Down
  56.         Moves the cursor to the first/last line displayed in the window.
  57.  
  58. Shift-Cursor Left/Right
  59.         Moves the cursor to the first/last column of the current line.
  60.  
  61. Alt-Cursor Up/Down
  62.         Jumps to the start/end of the text.
  63.  
  64. Alt-Cursor Left/Right
  65.         Moves the cursor to the next word in front of or behind the cursor.
  66.  
  67. Shift-Delete oder Shift-Backspace
  68.         Deletes the line the cursor stands. It is stored in the clipboard.
  69.  
  70. Alt-Delete
  71.         Deletes the line starting form the position of the cursor to the end.
  72.  
  73. Alt-Backspace
  74.         Deletes the text from the start to the cursor position.
  75.  
  76. Help
  77.   Opens the Online Help and displays an explanation to the word under the cursor.
  78.   The word must be an ANSI-C or C++ standard function.
  79.  
  80.  
  81. Advices to PhxAssembler
  82. ************************
  83.  
  84. As a bonus the freeware assembler FreePhxAss is delivered with
  85. StormC. It is mainly for useful for developers of PD compilers which
  86. use it for translation of their compiler output. The function size
  87. is *very* limited: There are no macros, no includes, no conditioned
  88. assembling. Many directives are also not available. 
  89.  
  90. FreePhxAss can be used freely, but the name of the Author should
  91. be mentioned in the project.
  92.  
  93. If you are interested in PhxAss, there is a registered version that
  94. is available at a low price.
  95.  
  96. Please contact
  97.  
  98. SMail:                  Frank Wille
  99.                         Auf dem Dreische 45
  100.                         32049 Herford
  101.                         Germany
  102.  
  103. EMail:                  frank@phoenix.owl.de
  104.  
  105.  
  106. Some Frequently asked Questions and Answers !
  107. *****************************************
  108. Q 1:
  109. ********
  110.  
  111. Why has StormC no Global Optimiser" ?
  112.  
  113. Answer:
  114. The compiler of StormC offers already a good optimisations. Some of
  115. the used techniques are also part of a global optimiser. Especially
  116. the optimised organisation of the global CPU and FPU registers is such
  117. a one.
  118.  
  119. StormC is already prepared to do more of the global optimisations in
  120. further versions. They can be implemented step by step. But as said
  121. before the optimisation of StormC and StormLINK. 
  122.  
  123. Q 2:
  124. ********
  125.  
  126. Why does a small "Hello World" gets so long (some Kbytes) ?
  127.  
  128. Answer:
  129. "Storm.lib" is a highly compatible ANSI C library that offers buffered I/O.
  130.  
  131. The program "Hello World" uses "printf" of the "Storm.lib", but it
  132. does not differ between the output of integer or floating point, so
  133. there are unused parts of the library in your code that makes small
  134. programs relatively large.
  135.  
  136. If only ANSI C is used the library "StormAmiga.lib" can be used. This
  137. is a highly optimised assembler library that generates very small and
  138. fast programs. It only supports "far code" and "far data" model.
  139.  
  140. Q 3:
  141. ********
  142.  
  143. How can I get a short "Hello World" using Storm.Lib ?
  144.  
  145. Answer:
  146. If floating point is needed and buffered I/O of AmigaDOS is enough
  147. AmigaDOS functions can be used for this. "Vprintf" and "VFPrintf"
  148. will directly output to AmigaDOS files, just like "printf". But these
  149. functions are not 100% ANSI compatible.
  150.  
  151. Another possibility is to resign on automatically open and close of
  152. libraries and its comfortable error handling which differs between
  153. Workbench and CLI start while paying attention to OS 1.3 and older.
  154. This comfort is not necessary for all programs.
  155.  
  156. So a minimal startup code, written in assembler can be used, that only
  157. does the essential jobs, e.g. only supporting the small data model,
  158. not supporting resident programs ...
  159.  
  160. Q 4:
  161. ********
  162.  
  163. Why is the library "storm.lib" such a big one and why is there
  164. only a single one (in contrast to SAS/C) ?
  165.  
  166. Answer:
  167. StormC support a further developed object format that is used for
  168. linker libraries as well. It is 100% compatible to the old one. Its
  169. advantage is that the Linker and the Compiler of StormC can accommodate
  170. more data models in one object file. So the programmer must not decide
  171. which is the right library that fits the used data model (far data,
  172. near data(a4), near data(a6)). This caused many errors. Now the linker
  173. takes the needed parts out of "Storm.lib". For these reasons "Storm.lib"
  174. is nearly as big as these three libraries of SAS/C.
  175.  
  176. In the future StormC will support even more code modells and CPU and
  177. FPU models, so "Storm.lib" will allow the optimised program generation
  178. automatically.
  179.  
  180. Q 5:
  181. ********
  182.  
  183. Why does the linker displays the error message "Symbol _exit
  184. not defined", when linking as Shared Library ?
  185.  
  186. Answer:
  187. The Shared Library calls the ANSI function exit(). This can be done
  188. directly by the programmer or indirectly by the linker library which
  189. uses this function. "Storm.lib" uses this function to automatically
  190. open the used Shared Library, e.g. the "utility.library".
  191.  
  192. Basically a Shared Library is not allowed to use exit(), cause it
  193. can not be finished simply.
  194.  
  195. How to avoid this call ?
  196.  
  197. You should not use the automatic opening of used Shared Libraries.
  198. Instead you must open and close the library as it is described in
  199. the manual.
  200.  
  201. To get a list of all used libraries you should include
  202.  
  203. void exit() {}
  204.  
  205. into the Shared Library. Now you can link it.
  206.  
  207. You should use the linker option "Write Map File". The linker will
  208. generate a file with the extension ".map". Now watch all INIT
  209. functions which contain the basis name of the Shared Library, e.g.
  210. INIT_1_UtilityBase.
  211.  
  212. Now open all these libraries with your own routines. Pay attention
  213. to declare the corresponding basis variable (e.g. UtilityBase). Do not
  214. forget to remove your own exit() function from the source. 
  215.  
  216. (c) HAAGE & PARTNER Computer GmbH - We develop to PowerUp the AMIGA
  217.  
  218.